package com.ctshk.rpc.order.ship.dto;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * <p>
 * 船票推荐DTO
 * </p>
 *
 * @author 刘蕾
 * @since 2021年03月05日
 */
@Data
@ApiModel(value = "ShipReserveDTO对象", description = "船票推荐DTO")
public class ShipReserveDTO implements Serializable {

    private static final long serialVersionUID = 1L;


    @ApiModelProperty(value = "产品ID")
    private Long id;

    @ApiModelProperty(value = "船种名称")
    private String shipTypeName;

    @ApiModelProperty(value = "产品编号")
    private String code;

    @ApiModelProperty(value = "航线ID")
    private String routeId;

    @ApiModelProperty(value = "航线名称")
    private String routeName;

    @ApiModelProperty(value = "航次码")
    private String voyage;

    @ApiModelProperty(value = "船公司类型(1 信德船票，2 珠江船票")
    private Long companyType;


    @ApiModelProperty(value = "船舱等级(1 普通舱，2 高级舱，3 豪华舱)")
    private Long cabinClass;

    @ApiModelProperty(value = "出发港口")
    private String depPlaceName;

    @ApiModelProperty(value = "到达港口")
    private String arrPlaceName;

    @ApiModelProperty(value = "总价格 成本+服务费+税费")
    private BigDecimal price;

    @ApiModelProperty(value = "成本价")
    private BigDecimal cosPrice;

    @ApiModelProperty(value = "服务费")
    private BigDecimal servicePrice;

    @ApiModelProperty(value = "税费")
    private BigDecimal taxPrice;

    @ApiModelProperty(value = "线下加幅费用")
    private BigDecimal offLinePrice;

    @ApiModelProperty(value = "每日库存")
    private Integer dailyStock;

    @ApiModelProperty(value = "已售数")
    private Integer soldNumber;

    @ApiModelProperty(value = "票数")
    private Integer ticketNumber;

    @ApiModelProperty(value = "出发城市id")
    private Long depCityId;

    @ApiModelProperty(value = "到达城市id")
    private Long arrCityId;

    @ApiModelProperty(value = "出发地id")
    private Long depPlaceId;

    @ApiModelProperty(value = "到达地id")
    private Long arrPlaceId;

    @ApiModelProperty(value = "出发城市id")
    private String depCityName;

    @ApiModelProperty(value = "到达城市id")
    private String arrCityName;


    @ApiModelProperty(value = "旅客成本集合")
    private List<ShipProductCostTouristDTO> shipProductCostTouristList;

    @ApiModelProperty(value = "退改条款")
    private ShipOrderReservationSettingsDTO shipProductReservationSettings;


}
